.TH std::strcspn 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::strcspn \- std::strcspn

.SH Synopsis
   Defined in header <cstring>
   std::size_t strcspn( const char *dest, const char *src );

   Returns the length of the maximum initial segment of the byte string pointed to by
   dest, that consists of only the characters not found in byte string pointed to by
   src.

   The function name stands for "complementary span".

.SH Parameters

   dest - pointer to the null-terminated byte string to be analyzed
   src  - pointer to the null-terminated byte string that contains the characters to
          search for

.SH Return value

   The length of the maximum initial segment that contains only characters not found in
   the byte string pointed to by src.

.SH Example


// Run this code

 #include <cstddef>
 #include <cstring>
 #include <iomanip>
 #include <iostream>
 #include <string>

 int main()
 {
     std::string s = "abcde312$#@";
     const char* invalid = "*$#";

     const std::size_t valid_len = std::strcspn(s.c_str(), invalid);
     if (valid_len != s.size())
     {
         std::cout << std::quoted(s)
                   << " contains invalid chars starting at position "
                   << valid_len << '\\n'
                   << std::string(valid_len + 1, '-') << "^\\n";
     }
 }

.SH Output:

 "abcde312$#@" contains invalid chars starting at position 8
 ---------^

.SH See also

                 returns the length of the maximum initial segment that consists
   strspn        of only the characters found in another byte string
                 \fI(function)\fP
                 returns the length of the maximum initial segment that consists
   wcscspn       of only the wide not found in another wide string
                 \fI(function)\fP
   strpbrk       finds the first location of any character from a set of separators
                 \fI(function)\fP
                 find first occurrence of characters
   find_first_of \fI(public member function of std::basic_string<CharT,Traits,Allocator>)\fP

   C documentation for
   strcspn
